package com.gk.panda.pojo.patrol.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author dubin
 * 详情DTO
 * @create 2022-11-02 9:45
 */
@Data
public class ReportDetailDTO {
    /**
     * 事件id
     */
    @ApiModelProperty(value = "事件id")
    private Long reportId;
    /**
     * 巡护id
     */
    @ApiModelProperty(value = "巡护id")
    private Long patrolId;

    /**
     * 创建人
     */
    private String createBy;
    //////////////巡护相关信息
    /**
     * 巡护编号
     */
    @ApiModelProperty(value = "巡护编号")
    private String patrolNum;

    /**
     * 总站机构
     */
    @ApiModelProperty(value = "总站机构")
    private String totalOrg;
    /**
     * 保护站
     */

    private String branchOrg;

    /**
     * 巡护开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date startTime;

    /**
     * 巡护结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date endTime;
    /**
     * 巡护总时长
     */
    @ApiModelProperty(value = "巡护总时长")
    private String dateSum;
    /**
     * 巡护时间   2022-11-2 11:27:24 ~ 2022-11-2 11:27:24
     */
    @ApiModelProperty(value = "巡护时间")
    private String patrolDate;
    private Long whenTime;

    /**
     * 巡护路程
     */
    @ApiModelProperty(value = "巡护路程")
    private String route;
    /**
     * 样线线路
     */
    @ApiModelProperty(value = "样线线路")
    private String line;

    /**
     * 巡护人员
     */

    private String people;

    /**
     * 其他人员
     */
    private String othersPeople;
    /**
     * 参与人员
     */
    @ApiModelProperty(value = "参与人员")
    private String join;

    /**
     * 参与人数
     */
    private Integer numberOf;

    /**
     * 联合单位
     */
    @ApiModelProperty(value = "联合单位")
    private String unit;
    /**
     * 巡护类型
     */

    private String patrolType;

    /**
     * 巡护类型描述
     */
    @ApiModelProperty(value = "巡护类型")
    private String patrolTypeName;


    /**
     * 海拔高差
     */
    @ApiModelProperty(value = "海拔高差")
    private String height;
    /**
     * 开始纬度
     */
    @ApiModelProperty(value = "开始纬度")
    private String startLat;

    /**
     * 开始经度
     */
    @ApiModelProperty(value = "开始经度")
    private String startLon;

    /**
     * 结束纬度
     */
    @ApiModelProperty(value = "结束纬度")
    private String endLat;

    /**
     * 结束经度
     */
    @ApiModelProperty(value = "结束经度")
    private String endLon;
    /**
     * 事件坐标
     */
    @ApiModelProperty(value = "事件坐标")
    private List<PointDTO> pointList;

    /**
     * 资源 (图片和视频放在，一起会有类型区分）
     */
    @ApiModelProperty(value = "图片资源")
    private List<UrlDTO> picture;
    @ApiModelProperty(value = "视频资源")
    private List<UrlDTO> video;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date createTime;


    /**
     * 事件编号 CZSJ 2022 11 01 11 40  0001
     */
    @ApiModelProperty(value = "事件编号")
    private String reportNum;

    /**
     * 经度
     */
    @ApiModelProperty(value = "事件经度")
    private String longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "事件纬度")
    private String latitude;

    /**
     * 温度
     */
    @ApiModelProperty(value = "温度")
    private String temperature;

    /**
     * 天气
     */
    @ApiModelProperty(value = "天气")
    private String weather;

    /**
     * 湿度
     */
    @ApiModelProperty(value = "湿度")
    private String humidity;

    /**
     * 上报类型
     */

    private String reportType;
    /**
     * 上报类型描述
     */
    @ApiModelProperty(value = "事件类型")
    private String reportTypeDes;

    /**
     * 海拔
     */
    @ApiModelProperty(value = "海拔")
    private String elevation;
    /**
     * 事件描述
     */
    @ApiModelProperty(value = "事件描述")
    private String description;


    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "巡护状态")
    private String stateDes;
    /**
     * 覆盖面积
     */
    @ApiModelProperty(value = "覆盖面积")
    private String coverArea;

    private String state;
}
